package com.cloudwebrtc.voip.mediaengine.impl;

import com.cloudwebrtc.voip.mediaengine.RTCVideoEngine;

public class RTCVideoEngineImpl implements RTCVideoEngine {
	//implement for VideoEngine_JNI.cpp
	private long nativePtr = 0;
	private native int NumberOfCaptureDevices(long nativePtr);
	private native String GetCaptureDeviceNameOfIndex(long nativePtr,int index);
	private native String GetCaptureDeviceUniqueIdOfIndex(long nativePtr,int index);
	private native int GetCameraOrientation(long nativePtr,int index);
	
	public RTCVideoEngineImpl(long aNativePtr)
	{
		nativePtr = aNativePtr;
	}
	@Override
	public int NumberOfCaptureDevices() {
		return NumberOfCaptureDevices(nativePtr);
	}

	@Override
	public String GetCaptureDeviceNameOfIndex(int index) {
		return GetCaptureDeviceNameOfIndex(nativePtr,index);
	}

	@Override
	public String GetCaptureDeviceUniqueIdOfIndex(int index) {
		return GetCaptureDeviceUniqueIdOfIndex(nativePtr,index);
	}

	@Override
	public int GetCameraOrientation(int cam_index) {
		return GetCameraOrientation(nativePtr,cam_index);
	}

}
